package cn.changeforyou.web.dao.mybatis.ext.metaInfo.condition;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

/**
 * 括号包装器, 这里的内容就相当于括号里面的内容
 * @author zhyu
 * @version 1.0
 * @date 2022/2/17 13:13
 */
@Target(TYPE)
@Retention(RUNTIME)
public @interface BracketWrapper {

    /**
     *  括号id
     * @return
     */
    String key();

    /**
     * 括号是否以or相连
     * @return
     */
    boolean or() default false;

    /**
     * 父括号的id 默认是0
     * @return
     */
    String parentKey() default "0";

    /**
     * 加入这个括号的Condition的key
     * @return
     */
    String[] conditionKeys();
}
